Network elements such as switches and routers are expected to operate continuously for long periods of time. In-service software updates (ISSU) are important in the industry. Usually, these involve rebooting a network element, thereby taking it out of service during a maintenance window, or with a loss of redundancy. With clever software coding, in-service software updates can be performed without taking a network element out of service. Hardware upgrades, however, require physical removal of equipment and replacement of hardware with attendant down time. Even with programmable logic parts, such as FPGAs (field programmable gate array) and CPLDs (complex programmable logic device), it is common practice to take a network element out of service, upgrade the programmable parts, and then restore the network element to service. One problem is that customers often run their data centers around the clock, and getting a suitable maintenance window is not practical. In redundant systems, one component may be taken off-line, but then the system suffers from a loss-of-redundancy hazard which may not be acceptable. It is within this context that the embodiments arise.